Video content is typically distributed using one of two mechanisms: progressive video and streamed video. Progressive video content is delivered as a series of files (or a playlist of files) that are fetched by a client from a server. This permits dynamic changes in video resolution and bandwidth, as well as insertion of custom advertisements and/or content. Streamed video can be delivered efficiently by multicasting.